﻿// <copyright file="HeuristicFormula.cs" company="Gustavo Franco">
// Copyright (c) 2006 All Right Reserved
// </copyright>
// <author>Gustavo Franco</author>
// <email>gustavo_franco@hotmail.com</email>
// <date>2006</date>
// <summary>Heuristic formaula types.</summary>

// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE. IT CAN BE DISTRIBUTED FREE OF CHARGE AS LONG AS THIS HEADER
// REMAINS UNCHANGED.

// Email:  gustavo_franco@hotmail.com

// Copyright (C) 2006 Franco, Gustavo

using System;

namespace TenneySoftware.Engine.Algorithms.Pathfinder {
    /// <summary>
    /// Heuristic formaula types.
    /// </summary>
    public enum HeuristicFormula {
        /// <summary>
        /// No formula selected.
        /// </summary>
        None                = 0,

        /// <summary>
        /// Use the Manhattan formula.
        /// </summary>
        Manhattan           = 1,

        /// <summary>
        /// Use the Maxium Dx/Dy formula.
        /// </summary>
        MaxDxDy             = 2,

        /// <summary>
        /// Use the Diagonal Shortcut formula.
        /// </summary>
        DiagonalShortcut    = 3,

        /// <summary>
        /// Use the Euclidean formula.
        /// </summary>
        Euclidean           = 4,

        /// <summary>
        /// Use the Euclidean / No Squareroot formula.
        /// </summary>
        EuclideanNoSqr      = 5,

        /// <summary>
        /// Use a custom formula.
        /// </summary>
        Custom1             = 6
    }
}
